﻿// // ******************************************************************
// //       /\ /|       @file       JellyfinUserItemDataDto.cs
// //       \ V/        @brief      await29
// //       | "")       @author     Await, 285283010@qq.com
// //       /  |
// //      /  \\        @Modified   2024-12-31 20:12
// //    *(__\_\        @Copyright  Copyright (c) , 2024-11-10 10:11 Await
// // ******************************************************************

namespace AutomaticSubtitles.Contracts.Dto.Jellyfin;

public class JellyfinUserItemDataDto
{
    /// <summary>
    /// Gets or sets the rating.
    /// </summary>
    /// <value>Gets or sets the rating.</value>
    public double? Rating { get; set; }

    /// <summary>
    /// Gets or sets the played percentage.
    /// </summary>
    /// <value>Gets or sets the played percentage.</value>
    public double? PlayedPercentage { get; set; }

    /// <summary>
    /// Gets or sets the unplayed item count.
    /// </summary>
    /// <value>Gets or sets the unplayed item count.</value>
    public int? UnplayedItemCount { get; set; }

    /// <summary>
    /// Gets or sets the playback position ticks.
    /// </summary>
    /// <value>Gets or sets the playback position ticks.</value>
    public long PlaybackPositionTicks { get; set; }

    /// <summary>
    /// Gets or sets the play count.
    /// </summary>
    /// <value>Gets or sets the play count.</value>
    public int PlayCount { get; set; }

    /// <summary>
    /// Gets or sets a value indicating whether this instance is favorite.
    /// </summary>
    /// <value>Gets or sets a value indicating whether this instance is favorite.</value>
    public bool IsFavorite { get; set; }

    /// <summary>
    /// Gets or sets a value indicating whether this MediaBrowser.Model.Dto.UserItemDataDto is likes.
    /// </summary>
    /// <value>Gets or sets a value indicating whether this MediaBrowser.Model.Dto.UserItemDataDto is likes.</value>
    public bool? Likes { get; set; }

    /// <summary>
    /// Gets or sets the last played date.
    /// </summary>
    /// <value>Gets or sets the last played date.</value>
    public DateTime? LastPlayedDate { get; set; }

    /// <summary>
    /// Gets or sets a value indicating whether this MediaBrowser.Model.Dto.UserItemDataDto is played.
    /// </summary>
    /// <value>Gets or sets a value indicating whether this MediaBrowser.Model.Dto.UserItemDataDto is played.</value>
    public bool Played { get; set; }

    /// <summary>
    /// Gets or sets the key.
    /// </summary>
    /// <value>Gets or sets the key.</value>
    public string Key { get; set; }

    /// <summary>
    /// Gets or sets the item identifier.
    /// </summary>
    /// <value>Gets or sets the item identifier.</value>
    public string ItemId { get; set; }
}